package Server;

import java.util.ArrayList;
import java.net.*;
import java.io.*;


import util.Etudiant;
import util.Personne;



/**
 * Classe principale du serveur de surnom "multi-thread�"
 * @author Graoudi Nohri & Ochi Ghazi
 *
 */
public class Server  {
	
	private ServerSocket Soc;
	public static final int PORT = 1313;
	
	/**
	 * La base de donn�es (non persistante) des personnes
	 */
	private ArrayList<Personne> listDePersonne;
	
	/**
	 * Constructeur qui ajoute deux personnes dans la bases	
	 * @throws IOException
	 */
    public Server() throws IOException {
		listDePersonne = new ArrayList<Personne>();
		ArrayList<String> p = new ArrayList<String>();
		p.add("Poly");
		p.add("Tech");
		ArrayList<String> f = new ArrayList<String>();
		f.add("Nice");
		f.add("Sophia");
		listDePersonne.add(new Etudiant("Ecole", p));
		listDePersonne.add(new Etudiant( "Ingenieur", f));
		Soc = new ServerSocket(PORT);
		System.out.println("Socket cr�� sur le port : " + PORT);
    }
    
	public void launch(){
		while(true){	
			Socket	client;
			try {
				client = Soc.accept();
			} catch (IOException e) {
				System.out.println("Erreur sur le accept()");
				return;
			}
		MonThread m = new MonThread(client, listDePersonne);
		m.start();
		}
	}
	
  




	
}